_o_p Specifies the accumulation buffer operation. Symbolic constants
GGGGLLLL____AAAACCCCCCCCUUUUMMMM, GGGGLLLL____LLLLOOOOAAAADDDD, GGGGLLLL____AAAADDDDDDDD, GGGGLLLL____MMMMUUUULLLLTTTT, and GGGGLLLL____RRRREEEETTTTUUUURRRRNNNN are accepted.
_v_a_l_u_e Specifies a floating-point value used in the accumulation buffer
operation. _o_p determines how _v_a_l_u_e is used.
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
The accumulation buffer is an extended-range color buffer. Images are
not rendered into it. Rather, images rendered into one of the color
buffers are added to the contents of the accumulation buffer after
rendering. Effects such as antialiasing (of points, lines, and
polygons), motion blur, and depth of field can be created by accumulating
images generated with different transformation matrices.
Each pixel in the accumulation buffer consists of red, green, blue, and
alpha values. The number of bits per component in the accumulation
buffer depends on the implementation. You can examine this number by
calling ggggllllGGGGeeeettttIIIInnnntttteeeeggggeeeerrrrvvvv four times, with arguments GGGGLLLL____AAAACCCCCCCCUUUUMMMM____RRRREEEEDDDD____BBBBIIIITTTTSSSS,
GGGGLLLL____AAAACCCCCCCCUUUUMMMM____GGGGRRRREEEEEEEENNNN____BBBBIIIITTTTSSSS, GGGGLLLL____AAAACCCCCCCCUUUUMMMM____BBBBLLLLUUUUEEEE____BBBBIIIITTTTSSSS, and GGGGLLLL____AAAACCCCCCCCUUUUMMMM____AAAALLLLPPPPHHHHAAAA____BBBBIIIITTTTSSSS.
Regardless of the number of bits per component, the range of values
stored by each component is [-1, 1]. The accumulation buffer pixels are
mapped one-to-one with frame buffer pixels.
ggggllllAAAAccccccccuuuummmm operates on the accumulation buffer. The first argument, _o_p, is
a symbolic constant that selects an accumulation buffer operation. The
second argument, _v_a_l_u_e, is a floating-point value to be used in that
operation. Five operations are specified: GGGGLLLL____AAAACCCCCCCCUUUUMMMM, GGGGLLLL____LLLLOOOOAAAADDDD, GGGGLLLL____AAAADDDDDDDD,
GGGGLLLL____MMMMUUUULLLLTTTT, and GGGGLLLL____RRRREEEETTTTUUUURRRRNNNN.
All accumulation buffer operations are limited to the area of the current
scissor box and applied identically to the red, green, blue, and alpha
components of each pixel. If a ggggllllAAAAccccccccuuuummmm operation results in a value
outside the range [-1, 1], the contents of an accumulation buffer pixel
component are undefined.
The operations are as follows:
GGGGLLLL____AAAACCCCCCCCUUUUMMMM Obtains R, G, B, and A values from the buffer currently
selected for reading (see ggggllllRRRReeeeaaaaddddBBBBuuuuffffffffeeeerrrr). Each component
n
value is divided by 2 -1, where n is the number of bits
allocated to each color component in the currently selected
buffer. The result is a floating-point value in the range
On IIIInnnnffffiiiinnnniiiitttteeeeRRRReeeeaaaalllliiiittttyyyy systems the following restrictions apply:
1. When _o_p is GGGGLLLL____RRRREEEETTTTUUUURRRRNNNN, _v_a_l_u_e must be greater than or equal to
-4.0 and strictly less than 4.0. If _v_a_l_u_e is outside this
range, the results are undefined.
2. For other values of _o_p, _v_a_l_u_e must be greater than or equal to
-1.0 and strictly less than 1.0. If _v_a_l_u_e is outside this
range, the results are undefined.
RRRReeeeaaaalllliiiittttyyyyEEEEnnnnggggiiiinnnneeee, RRRReeeeaaaalllliiiittttyyyyEEEEnnnnggggiiiinnnneeee2222, and VVVVTTTTXXXX systems do not support negative